/**
 * 
 */
package com.dp.creat.abstractfactory;

/**
 * This is to describe Abstract Factory design pattern
 * 
 * It Provides an interface for creating families of related or dependent
 * products without specifying their concrete implementations. On simple words,
 * define an interface for creating an object but let subclasses decide which
 * class to instantiate
 * 
 * @author Sunaina.Sharma
 * 
 */
public class AbstractFactoryEx {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Address addFactory = new USAddressFactory().getAddress();
		System.out.println(addFactory.getCity());
	}

}
